%%
%% %CopyrightBegin%
%%
%% Copyright Hillside Technology Ltd. 2016. All Rights Reserved.
%%
%% Licensed under the Apache License, Version 2.0 (the "License");
%% you may not use this file except in compliance with the License.
%% You may obtain a copy of the License at
%%
%%     http://www.apache.org/licenses/LICENSE-2.0
%%
%% Unless required by applicable law or agreed to in writing, software
%% distributed under the License is distributed on an "AS IS" BASIS,
%% WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
%% See the License for the specific language governing permissions and
%% limitations under the License.
%%
%% %CopyrightEnd%
%%

%% generated by soap_make_decoder from: simplified_wsdl_1_1.xsd using options: [{prefix,"wsdl"},{include_files,[{"http://schemas.xmlsoap.org/wsdl/soap/","soap","wsdl11soap11.xsd"},{"http://schemas.xmlsoap.org/wsdl/soap12/","soap12","wsdl11soap12.xsd"},{"http://schemas.xmlsoap.org/wsdl/","wsdl","simplified_wsdl_1_1.xsd"}]},add_xsd_model]

-module(soap_decode_wsdl_1_1).

%% decode_callback is a erlsom:sax() callback. This can be used in the 
%% handler module of the soap implementation.
-export([decode_callback/2]).
%% encode() can be used as the encoder in the handler module.
-export([encode/1]).
%% model() is used to create a wsdl
-export([model/0]).

%% The decode() functions are "stand alone" decoders.
%% They are not used by the soap implementation.
-export([decode/1, decode/2]).

decode_callback(startDocument = Event, undefined) ->
  Callback_state = erlsom_parse:new_state(model()),
  erlsom_parse:xml2StructCallback(Event, Callback_state);
decode_callback(Event, State) ->
  erlsom_parse:xml2StructCallback(Event, State).

decode(Xml) -> 
  decode(Xml, []).

decode(Xml, Options) -> 
  erlsom:scan(Xml, model(), Options).

encode(Struct) -> 
  {ok, Xml} = erlsom:write(Struct, model()),
  unicode:characters_to_binary(Xml, unicode).

model() ->
{model,[{type,'_document',sequence,
              [{el,[{alt,'xsd:simpleType',globalSimpleTypeType,[],1,1,true,
                         undefined},
                    {alt,'xsd:schema',schemaType,[],1,1,true,undefined},
                    {alt,'xsd:element',globalElementType,[],1,1,true,
                         undefined},
                    {alt,'xsd:complexType',globalComplexTypeType,[],1,1,true,
                         undefined},
                    {alt,'xsd:attributeGroup',attributeGroupDefType,[],1,1,
                         true,undefined},
                    {alt,'xsd:attribute',globalAttributeType,[],1,1,true,
                         undefined},
                    {alt,'xsd:annotation',annotationType,[],1,1,true,
                         undefined},
                    {alt,'wsdl:definitions','wsdl:definitions',[],1,1,true,
                         undefined},
                    {alt,'soap:operation','soap:operation',[],1,1,true,
                         undefined},
                    {alt,'soap:headerfault','soap:headerFault',[],1,1,true,
                         undefined},
                    {alt,'soap:header','soap:header',[],1,1,true,undefined},
                    {alt,'soap:fault','soap:fault',[],1,1,true,undefined},
                    {alt,'soap:body','soap:body',[],1,1,true,undefined},
                    {alt,'soap:binding','soap:binding',[],1,1,true,undefined},
                    {alt,'soap:address','soap:address',[],1,1,true,undefined},
                    {alt,'soap12:operation','soap12:tOperation',[],1,1,true,
                         undefined},
                    {alt,'soap12:headerfault','soap12:tHeaderFault',[],1,1,
                         true,undefined},
                    {alt,'soap12:header','soap12:tHeader',[],1,1,true,
                         undefined},
                    {alt,'soap12:fault','soap12:tFault',[],1,1,true,undefined},
                    {alt,'soap12:body','soap12:tBody',[],1,1,true,undefined},
                    {alt,'soap12:binding','soap12:tBinding',[],1,1,true,
                         undefined},
                    {alt,'soap12:address','soap12:tAddress',[],1,1,true,
                         undefined}],
                   1,1,undefined,3}],
              [],undefined,undefined,1,1,1,false,undefined},
        {type,allType,sequence,
              [{el,[{alt,'xsd:annotation',annotationType,[],1,1,true,
                         undefined}],
                   0,1,undefined,3},
               {el,[{alt,'xsd:sequence',sequenceType,[],1,1,true,undefined},
                    {alt,'xsd:choice',choiceType,[],1,1,true,undefined},
                    {alt,'xsd:group',groupRefType,[],1,1,true,undefined},
                    {alt,'xsd:element',localElementType,[],1,1,true,
                         undefined}],
                   0,unbound,undefined,4}],
              [{att,minOccurs,5,true,char},{att,maxOccurs,6,true,char}],
              {anyAttr,undefined,"##other",undefined},
              undefined,5,1,1,false,undefined},
        {type,annotationType,sequence,
              [{el,[{alt,'#any',any,[],1,1,true,
                         {anyInfo,undefined,"##other",undefined}},
                    {alt,'xsd:simpleType',globalSimpleTypeType,[],1,1,true,
                         undefined},
                    {alt,'xsd:schema',schemaType,[],1,1,true,undefined},
                    {alt,'xsd:element',globalElementType,[],1,1,true,
                         undefined},
                    {alt,'xsd:complexType',globalComplexTypeType,[],1,1,true,
                         undefined},
                    {alt,'xsd:attributeGroup',attributeGroupDefType,[],1,1,
                         true,undefined},
                    {alt,'xsd:attribute',globalAttributeType,[],1,1,true,
                         undefined},
                    {alt,'xsd:annotation',annotationType,[],1,1,true,
                         undefined},
                    {alt,'wsdl:definitions','wsdl:definitions',[],1,1,true,
                         undefined},
                    {alt,'soap:operation','soap:operation',[],1,1,true,
                         undefined},
                    {alt,'soap:headerfault','soap:headerFault',[],1,1,true,
                         undefined},
                    {alt,'soap:header','soap:header',[],1,1,true,undefined},
                    {alt,'soap:fault','soap:fault',[],1,1,true,undefined},
                    {alt,'soap:body','soap:body',[],1,1,true,undefined},
                    {alt,'soap:binding','soap:binding',[],1,1,true,undefined},
                    {alt,'soap:address','soap:address',[],1,1,true,undefined},
                    {alt,'soap12:operation','soap12:tOperation',[],1,1,true,
                         undefined},
                    {alt,'soap12:headerfault','soap12:tHeaderFault',[],1,1,
                         true,undefined},
                    {alt,'soap12:header','soap12:tHeader',[],1,1,true,
                         undefined},
                    {alt,'soap12:fault','soap12:tFault',[],1,1,true,undefined},
                    {alt,'soap12:body','soap12:tBody',[],1,1,true,undefined},
                    {alt,'soap12:binding','soap12:tBinding',[],1,1,true,
                         undefined},
                    {alt,'soap12:address','soap12:tAddress',[],1,1,true,
                         undefined}],
                   0,unbound,undefined,3}],
              [],
              {anyAttr,undefined,"##other",undefined},
              undefined,2,1,1,false,undefined},
        {type,anyAttributeType,sequence,
              [{el,[{alt,'xsd:annotation',annotationType,[],1,1,true,
                         undefined}],
                   0,1,undefined,6}],
              [{att,id,3,true,char},
               {att,namespace,4,true,char},
               {att,processContents,5,true,char}],
              {anyAttr,undefined,"##other",undefined},
              undefined,5,1,1,false,undefined},
        {type,anyType,sequence,
              [{el,[{alt,'#any',any,[],1,1,true,
                         {anyInfo,undefined,"##other",undefined}},
                    {alt,'xsd:simpleType',globalSimpleTypeType,[],1,1,true,
                         undefined},
                    {alt,'xsd:schema',schemaType,[],1,1,true,undefined},
                    {alt,'xsd:element',globalElementType,[],1,1,true,
                         undefined},
                    {alt,'xsd:complexType',globalComplexTypeType,[],1,1,true,
                         undefined},
                    {alt,'xsd:attributeGroup',attributeGroupDefType,[],1,1,
                         true,undefined},
                    {alt,'xsd:attribute',globalAttributeType,[],1,1,true,
                         undefined},
                    {alt,'xsd:annotation',annotationType,[],1,1,true,
                         undefined},
                    {alt,'wsdl:definitions','wsdl:definitions',[],1,1,true,
                         undefined},
                    {alt,'soap:operation','soap:operation',[],1,1,true,
                         undefined},
                    {alt,'soap:headerfault','soap:headerFault',[],1,1,true,
                         undefined},
                    {alt,'soap:header','soap:header',[],1,1,true,undefined},
                    {alt,'soap:fault','soap:fault',[],1,1,true,undefined},
                    {alt,'soap:body','soap:body',[],1,1,true,undefined},
                    {alt,'soap:binding','soap:binding',[],1,1,true,undefined},
                    {alt,'soap:address','soap:address',[],1,1,true,undefined},
                    {alt,'soap12:operation','soap12:tOperation',[],1,1,true,
                         undefined},
                    {alt,'soap12:headerfault','soap12:tHeaderFault',[],1,1,
                         true,undefined},
                    {alt,'soap12:header','soap12:tHeader',[],1,1,true,
                         undefined},
                    {alt,'soap12:fault','soap12:tFault',[],1,1,true,undefined},
                    {alt,'soap12:body','soap12:tBody',[],1,1,true,undefined},
                    {alt,'soap12:binding','soap12:tBinding',[],1,1,true,
                         undefined},
                    {alt,'soap12:address','soap12:tAddress',[],1,1,true,
                         undefined}],
                   0,unbound,undefined,3}],
              [{att,minOccurs,4,true,char},
               {att,maxOccurs,5,true,char},
               {att,namespace,6,true,char},
               {att,processContents,7,true,char}],
              {anyAttr,undefined,"##other",undefined},
              undefined,6,1,1,false,undefined},
        {type,attributeGroupDefType,sequence,
              [{el,[{alt,'xsd:annotation',annotationType,[],1,1,true,
                         undefined}],
                   0,1,undefined,5},
               {el,[{alt,'xsd:attributeGroup',attributeGroupRefType,[],1,1,
                         true,undefined},
                    {alt,'xsd:attribute',localAttributeType,[],1,1,true,
                         undefined}],
                   0,unbound,undefined,6},
               {el,[{alt,'xsd:anyAttribute',anyAttributeType,[],1,1,true,
                         undefined}],
                   0,1,undefined,7}],
              [{att,id,3,true,char},{att,name,4,false,ascii}],
              {anyAttr,undefined,"##other",undefined},
              undefined,6,1,1,false,undefined},
        {type,attributeGroupRefType,sequence,
              [{el,[{alt,'xsd:annotation',annotationType,[],1,1,true,
                         undefined}],
                   0,1,undefined,2}],
              [{att,ref,3,true,qname},{att,id,4,true,char}],
              {anyAttr,undefined,"##other",undefined},
              undefined,3,1,1,false,undefined},
        {type,choiceType,sequence,
              [{el,[{alt,'xsd:annotation',annotationType,[],1,1,true,
                         undefined}],
                   0,1,undefined,3},
               {el,[{alt,'xsd:any',anyType,[],1,1,true,undefined},
                    {alt,'xsd:sequence',sequenceType,[],1,1,true,undefined},
                    {alt,'xsd:choice',choiceType,[],1,1,true,undefined},
                    {alt,'xsd:group',groupRefType,[],1,1,true,undefined},
                    {alt,'xsd:element',localElementType,[],1,1,true,
                         undefined}],
                   0,unbound,undefined,7}],
              [{att,id,6,true,char},
               {att,minOccurs,4,true,char},
               {att,maxOccurs,5,true,char}],
              {anyAttr,undefined,"##other",undefined},
              undefined,6,1,1,false,undefined},
        {type,complexContentType,sequence,
              [{el,[{alt,'xsd:annotation',annotationType,[],1,1,true,
                         undefined}],
                   0,1,undefined,3},
               {el,[{alt,'xsd:restriction',restrictionTypeC,[],1,1,true,
                         undefined},
                    {alt,'xsd:extension',extensionTypeC,[],1,1,true,
                         undefined}],
                   1,1,undefined,4}],
              [{att,mixed,5,true,bool}],
              {anyAttr,undefined,"##other",undefined},
              undefined,4,1,1,false,undefined},
        {type,extensionType,sequence,
              [{el,[{alt,'xsd:annotation',annotationType,[],1,1,true,
                         undefined}],
                   0,1,undefined,4},
               {el,[{alt,'xsd:attributeGroup',attributeGroupRefType,[],1,1,
                         true,undefined},
                    {alt,'xsd:attribute',localAttributeType,[],1,1,true,
                         undefined}],
                   0,unbound,undefined,5},
               {el,[{alt,'xsd:anyAttribute',anyAttributeType,[],1,1,true,
                         undefined}],
                   0,1,undefined,6}],
              [{att,base,3,false,qname}],
              {anyAttr,undefined,"##other",undefined},
              undefined,5,1,1,false,undefined},
        {type,extensionTypeC,sequence,
              [{el,[{alt,'xsd:annotation',annotationType,[],1,1,true,
                         undefined}],
                   0,1,undefined,4},
               {el,[{alt,'xsd:all',allType,[],1,1,true,undefined},
                    {alt,'xsd:group',groupRefType,[],1,1,true,undefined},
                    {alt,'xsd:choice',choiceType,[],1,1,true,undefined},
                    {alt,'xsd:sequence',sequenceType,[],1,1,true,undefined},
                    {alt,'xsd:all',allType,[],1,1,true,undefined}],
                   0,1,undefined,5},
               {el,[{alt,'xsd:attributeGroup',attributeGroupRefType,[],1,1,
                         true,undefined},
                    {alt,'xsd:attribute',localAttributeType,[],1,1,true,
                         undefined}],
                   0,unbound,undefined,6},
               {el,[{alt,'xsd:anyAttribute',anyAttributeType,[],1,1,true,
                         undefined}],
                   0,1,undefined,7}],
              [{att,base,3,false,qname}],
              {anyAttr,undefined,"##other",undefined},
              undefined,6,1,1,false,undefined},
        {type,globalAttributeType,sequence,
              [{el,[{alt,'#any',any,[],1,1,true,
                         {anyInfo,undefined,"##other",undefined}},
                    {alt,'xsd:simpleType',globalSimpleTypeType,[],1,1,true,
                         undefined},
                    {alt,'xsd:schema',schemaType,[],1,1,true,undefined},
                    {alt,'xsd:element',globalElementType,[],1,1,true,
                         undefined},
                    {alt,'xsd:complexType',globalComplexTypeType,[],1,1,true,
                         undefined},
                    {alt,'xsd:attributeGroup',attributeGroupDefType,[],1,1,
                         true,undefined},
                    {alt,'xsd:attribute',globalAttributeType,[],1,1,true,
                         undefined},
                    {alt,'xsd:annotation',annotationType,[],1,1,true,
                         undefined},
                    {alt,'wsdl:definitions','wsdl:definitions',[],1,1,true,
                         undefined},
                    {alt,'soap:operation','soap:operation',[],1,1,true,
                         undefined},
                    {alt,'soap:headerfault','soap:headerFault',[],1,1,true,
                         undefined},
                    {alt,'soap:header','soap:header',[],1,1,true,undefined},
                    {alt,'soap:fault','soap:fault',[],1,1,true,undefined},
                    {alt,'soap:body','soap:body',[],1,1,true,undefined},
                    {alt,'soap:binding','soap:binding',[],1,1,true,undefined},
                    {alt,'soap:address','soap:address',[],1,1,true,undefined},
                    {alt,'soap12:operation','soap12:tOperation',[],1,1,true,
                         undefined},
                    {alt,'soap12:headerfault','soap12:tHeaderFault',[],1,1,
                         true,undefined},
                    {alt,'soap12:header','soap12:tHeader',[],1,1,true,
                         undefined},
                    {alt,'soap12:fault','soap12:tFault',[],1,1,true,undefined},
                    {alt,'soap12:body','soap12:tBody',[],1,1,true,undefined},
                    {alt,'soap12:binding','soap12:tBinding',[],1,1,true,
                         undefined},
                    {alt,'soap12:address','soap12:tAddress',[],1,1,true,
                         undefined}],
                   0,unbound,undefined,9}],
              [{att,name,3,false,ascii},
               {att,type,4,true,qname},
               {att,use,5,true,char},
               {att,fixed,6,true,char},
               {att,default,7,true,char},
               {att,id,8,true,char}],
              {anyAttr,undefined,"##other",undefined},
              undefined,8,1,1,false,undefined},
        {type,globalComplexTypeType,sequence,
              [{el,[{alt,'xsd:annotation',annotationType,[],1,1,true,
                         undefined}],
                   0,1,undefined,9},
               {el,[{alt,'xsd:sequence',sequenceType,[],1,1,true,undefined},
                    {alt,'xsd:choice',choiceType,[],1,1,true,undefined},
                    {alt,'xsd:all',allType,[],1,1,true,undefined},
                    {alt,'xsd:group',groupRefType,[],1,1,true,undefined},
                    {alt,'xsd:complexContent',complexContentType,[],1,1,true,
                         undefined},
                    {alt,'xsd:simpleContent',simpleContentType,[],1,1,true,
                         undefined}],
                   0,1,undefined,10},
               {el,[{alt,'xsd:attribute',localAttributeType,[],1,1,true,
                         undefined},
                    {alt,'xsd:attributeGroup',attributeGroupRefType,[],1,1,
                         true,undefined}],
                   0,unbound,undefined,11},
               {el,[{alt,'xsd:anyAttribute',anyAttributeType,[],1,1,true,
                         undefined}],
                   0,1,undefined,12}],
              [{att,name,3,false,ascii},
               {att,final,4,true,char},
               {att,abstract,5,true,bool},
               {att,block,6,true,char},
               {att,mixed,7,true,bool},
               {att,id,8,true,char}],
              {anyAttr,undefined,"##other",undefined},
              undefined,11,1,1,false,undefined},
        {type,globalElementType,sequence,
              [{el,[{alt,'xsd:annotation',annotationType,[],1,1,true,
                         undefined}],
                   0,1,undefined,12},
               {el,[{alt,'xsd:complexType',localComplexTypeType,[],1,1,true,
                         undefined},
                    {alt,'xsd:simpleType',localSimpleTypeType,[],1,1,true,
                         undefined}],
                   0,1,undefined,13},
               {el,[{alt,'xsd:keyref',ignoreType,[],1,1,true,undefined},
                    {alt,'xsd:key',ignoreType,[],1,1,true,undefined},
                    {alt,'xsd:unique',ignoreType,[],1,1,true,undefined}],
                   0,unbound,undefined,14}],
              [{att,name,3,false,ascii},
               {att,type,4,true,qname},
               {att,default,5,true,char},
               {att,fixed,6,true,char},
               {att,id,7,true,char},
               {att,abstract,8,true,bool},
               {att,substitutionGroup,9,true,qname},
               {att,final,10,true,char},
               {att,nillable,11,true,bool}],
              {anyAttr,undefined,"##other",undefined},
              undefined,13,1,1,false,undefined},
        {type,globalSimpleTypeType,sequence,
              [{el,[{alt,'xsd:annotation',annotationType,[],1,1,true,
                         undefined}],
                   0,1,undefined,5},
               {el,[{alt,'#any',any,[],1,1,true,
                         {anyInfo,undefined,"##other",undefined}},
                    {alt,'xsd:simpleType',globalSimpleTypeType,[],1,1,true,
                         undefined},
                    {alt,'xsd:schema',schemaType,[],1,1,true,undefined},
                    {alt,'xsd:element',globalElementType,[],1,1,true,
                         undefined},
                    {alt,'xsd:complexType',globalComplexTypeType,[],1,1,true,
                         undefined},
                    {alt,'xsd:attributeGroup',attributeGroupDefType,[],1,1,
                         true,undefined},
                    {alt,'xsd:attribute',globalAttributeType,[],1,1,true,
                         undefined},
                    {alt,'xsd:annotation',annotationType,[],1,1,true,
                         undefined},
                    {alt,'wsdl:definitions','wsdl:definitions',[],1,1,true,
                         undefined},
                    {alt,'soap:operation','soap:operation',[],1,1,true,
                         undefined},
                    {alt,'soap:headerfault','soap:headerFault',[],1,1,true,
                         undefined},
                    {alt,'soap:header','soap:header',[],1,1,true,undefined},
                    {alt,'soap:fault','soap:fault',[],1,1,true,undefined},
                    {alt,'soap:body','soap:body',[],1,1,true,undefined},
                    {alt,'soap:binding','soap:binding',[],1,1,true,undefined},
                    {alt,'soap:address','soap:address',[],1,1,true,undefined},
                    {alt,'soap12:operation','soap12:tOperation',[],1,1,true,
                         undefined},
                    {alt,'soap12:headerfault','soap12:tHeaderFault',[],1,1,
                         true,undefined},
                    {alt,'soap12:header','soap12:tHeader',[],1,1,true,
                         undefined},
                    {alt,'soap12:fault','soap12:tFault',[],1,1,true,undefined},
                    {alt,'soap12:body','soap12:tBody',[],1,1,true,undefined},
                    {alt,'soap12:binding','soap12:tBinding',[],1,1,true,
                         undefined},
                    {alt,'soap12:address','soap12:tAddress',[],1,1,true,
                         undefined}],
                   0,unbound,undefined,6}],
              [{att,name,3,false,ascii},{att,id,4,true,char}],
              {anyAttr,undefined,"##other",undefined},
              undefined,5,1,1,false,undefined},
        {type,groupDefType,sequence,
              [{el,[{alt,'xsd:annotation',annotationType,[],1,1,true,
                         undefined}],
                   0,1,undefined,4},
               {el,[{alt,'xsd:sequence',sequenceType,[],1,1,true,undefined},
                    {alt,'xsd:choice',choiceType,[],1,1,true,undefined},
                    {alt,'xsd:all',allType,[],1,1,true,undefined}],
                   0,1,undefined,5}],
              [{att,name,3,false,ascii}],
              {anyAttr,undefined,"##other",undefined},
              undefined,4,1,1,false,undefined},
        {type,groupRefType,sequence,[],
              [{att,ref,3,false,qname},
               {att,minOccurs,4,true,char},
               {att,maxOccurs,5,true,char}],
              {anyAttr,undefined,"##other",undefined},
              undefined,4,1,1,false,undefined},
        {type,ignoreType,sequence,
              [{el,[{alt,'#any',any,[],1,1,true,
                         {anyInfo,undefined,"##other",undefined}},
                    {alt,'xsd:simpleType',globalSimpleTypeType,[],1,1,true,
                         undefined},
                    {alt,'xsd:schema',schemaType,[],1,1,true,undefined},
                    {alt,'xsd:element',globalElementType,[],1,1,true,
                         undefined},
                    {alt,'xsd:complexType',globalComplexTypeType,[],1,1,true,
                         undefined},
                    {alt,'xsd:attributeGroup',attributeGroupDefType,[],1,1,
                         true,undefined},
                    {alt,'xsd:attribute',globalAttributeType,[],1,1,true,
                         undefined},
                    {alt,'xsd:annotation',annotationType,[],1,1,true,
                         undefined},
                    {alt,'wsdl:definitions','wsdl:definitions',[],1,1,true,
                         undefined},
                    {alt,'soap:operation','soap:operation',[],1,1,true,
                         undefined},
                    {alt,'soap:headerfault','soap:headerFault',[],1,1,true,
                         undefined},
                    {alt,'soap:header','soap:header',[],1,1,true,undefined},
                    {alt,'soap:fault','soap:fault',[],1,1,true,undefined},
                    {alt,'soap:body','soap:body',[],1,1,true,undefined},
                    {alt,'soap:binding','soap:binding',[],1,1,true,undefined},
                    {alt,'soap:address','soap:address',[],1,1,true,undefined},
                    {alt,'soap12:operation','soap12:tOperation',[],1,1,true,
                         undefined},
                    {alt,'soap12:headerfault','soap12:tHeaderFault',[],1,1,
                         true,undefined},
                    {alt,'soap12:header','soap12:tHeader',[],1,1,true,
                         undefined},
                    {alt,'soap12:fault','soap12:tFault',[],1,1,true,undefined},
                    {alt,'soap12:body','soap12:tBody',[],1,1,true,undefined},
                    {alt,'soap12:binding','soap12:tBinding',[],1,1,true,
                         undefined},
                    {alt,'soap12:address','soap12:tAddress',[],1,1,true,
                         undefined}],
                   0,unbound,undefined,3}],
              [],
              {anyAttr,undefined,"##any",undefined},
              undefined,2,1,1,false,undefined},
        {type,importType,sequence,
              [{el,[{alt,'xsd:annotation',annotationType,[],1,1,true,
                         undefined}],
                   0,1,undefined,6}],
              [{att,id,3,true,char},
               {att,namespace,4,true,char},
               {att,schemaLocation,5,true,char}],
              undefined,undefined,5,1,1,false,undefined},
        {type,includeType,sequence,
              [{el,[{alt,'xsd:annotation',annotationType,[],1,1,true,
                         undefined}],
                   0,1,undefined,5}],
              [{att,id,3,true,char},{att,schemaLocation,4,false,char}],
              undefined,undefined,4,1,1,false,undefined},
        {type,localAttributeType,sequence,
              [{el,[{alt,'#any',any,[],1,1,true,
                         {anyInfo,undefined,"##other",undefined}},
                    {alt,'xsd:simpleType',globalSimpleTypeType,[],1,1,true,
                         undefined},
                    {alt,'xsd:schema',schemaType,[],1,1,true,undefined},
                    {alt,'xsd:element',globalElementType,[],1,1,true,
                         undefined},
                    {alt,'xsd:complexType',globalComplexTypeType,[],1,1,true,
                         undefined},
                    {alt,'xsd:attributeGroup',attributeGroupDefType,[],1,1,
                         true,undefined},
                    {alt,'xsd:attribute',globalAttributeType,[],1,1,true,
                         undefined},
                    {alt,'xsd:annotation',annotationType,[],1,1,true,
                         undefined},
                    {alt,'wsdl:definitions','wsdl:definitions',[],1,1,true,
                         undefined},
                    {alt,'soap:operation','soap:operation',[],1,1,true,
                         undefined},
                    {alt,'soap:headerfault','soap:headerFault',[],1,1,true,
                         undefined},
                    {alt,'soap:header','soap:header',[],1,1,true,undefined},
                    {alt,'soap:fault','soap:fault',[],1,1,true,undefined},
                    {alt,'soap:body','soap:body',[],1,1,true,undefined},
                    {alt,'soap:binding','soap:binding',[],1,1,true,undefined},
                    {alt,'soap:address','soap:address',[],1,1,true,undefined},
                    {alt,'soap12:operation','soap12:tOperation',[],1,1,true,
                         undefined},
                    {alt,'soap12:headerfault','soap12:tHeaderFault',[],1,1,
                         true,undefined},
                    {alt,'soap12:header','soap12:tHeader',[],1,1,true,
                         undefined},
                    {alt,'soap12:fault','soap12:tFault',[],1,1,true,undefined},
                    {alt,'soap12:body','soap12:tBody',[],1,1,true,undefined},
                    {alt,'soap12:binding','soap12:tBinding',[],1,1,true,
                         undefined},
                    {alt,'soap12:address','soap12:tAddress',[],1,1,true,
                         undefined}],
                   0,unbound,undefined,10}],
              [{att,name,3,true,ascii},
               {att,type,4,true,qname},
               {att,use,5,true,char},
               {att,ref,6,true,qname},
               {att,fixed,7,true,char},
               {att,form,8,true,char},
               {att,default,9,true,char}],
              {anyAttr,undefined,"##other",undefined},
              undefined,9,1,1,false,undefined},
        {type,localComplexTypeType,sequence,
              [{el,[{alt,'xsd:annotation',annotationType,[],1,1,true,
                         undefined}],
                   0,1,undefined,4},
               {el,[{alt,'xsd:sequence',sequenceType,[],1,1,true,undefined},
                    {alt,'xsd:choice',choiceType,[],1,1,true,undefined},
                    {alt,'xsd:all',allType,[],1,1,true,undefined},
                    {alt,'xsd:complexContent',complexContentType,[],1,1,true,
                         undefined},
                    {alt,'xsd:group',groupRefType,[],1,1,true,undefined},
                    {alt,'xsd:simpleContent',simpleContentType,[],1,1,true,
                         undefined}],
                   0,1,undefined,5},
               {el,[{alt,'xsd:attribute',localAttributeType,[],1,1,true,
                         undefined},
                    {alt,'xsd:attributeGroup',attributeGroupRefType,[],1,1,
                         true,undefined}],
                   0,unbound,undefined,6},
               {el,[{alt,'xsd:anyAttribute',anyAttributeType,[],1,1,true,
                         undefined}],
                   0,1,undefined,7}],
              [{att,mixed,3,true,bool}],
              {anyAttr,undefined,"##other",undefined},
              undefined,6,1,1,false,undefined},
        {type,localElementType,sequence,
              [{el,[{alt,'xsd:annotation',annotationType,[],1,1,true,
                         undefined}],
                   0,1,undefined,12},
               {el,[{alt,'xsd:complexType',localComplexTypeType,[],1,1,true,
                         undefined},
                    {alt,'xsd:simpleType',localSimpleTypeType,[],1,1,true,
                         undefined}],
                   0,1,undefined,13},
               {el,[{alt,'xsd:keyref',ignoreType,[],1,1,true,undefined},
                    {alt,'xsd:key',ignoreType,[],1,1,true,undefined},
                    {alt,'xsd:unique',ignoreType,[],1,1,true,undefined}],
                   0,unbound,undefined,14}],
              [{att,name,3,true,ascii},
               {att,type,4,true,qname},
               {att,default,5,true,char},
               {att,fixed,6,true,char},
               {att,form,7,true,char},
               {att,ref,8,true,qname},
               {att,minOccurs,9,true,char},
               {att,maxOccurs,10,true,char},
               {att,nillable,11,true,bool}],
              {anyAttr,undefined,"##other",undefined},
              undefined,13,1,1,false,undefined},
        {type,localSimpleTypeType,sequence,
              [{el,[{alt,'xsd:annotation',annotationType,[],1,1,true,
                         undefined}],
                   0,1,undefined,3},
               {el,[{alt,'#any',any,[],1,1,true,
                         {anyInfo,undefined,"##other",undefined}},
                    {alt,'xsd:simpleType',globalSimpleTypeType,[],1,1,true,
                         undefined},
                    {alt,'xsd:schema',schemaType,[],1,1,true,undefined},
                    {alt,'xsd:element',globalElementType,[],1,1,true,
                         undefined},
                    {alt,'xsd:complexType',globalComplexTypeType,[],1,1,true,
                         undefined},
                    {alt,'xsd:attributeGroup',attributeGroupDefType,[],1,1,
                         true,undefined},
                    {alt,'xsd:attribute',globalAttributeType,[],1,1,true,
                         undefined},
                    {alt,'xsd:annotation',annotationType,[],1,1,true,
                         undefined},
                    {alt,'wsdl:definitions','wsdl:definitions',[],1,1,true,
                         undefined},
                    {alt,'soap:operation','soap:operation',[],1,1,true,
                         undefined},
                    {alt,'soap:headerfault','soap:headerFault',[],1,1,true,
                         undefined},
                    {alt,'soap:header','soap:header',[],1,1,true,undefined},
                    {alt,'soap:fault','soap:fault',[],1,1,true,undefined},
                    {alt,'soap:body','soap:body',[],1,1,true,undefined},
                    {alt,'soap:binding','soap:binding',[],1,1,true,undefined},
                    {alt,'soap:address','soap:address',[],1,1,true,undefined},
                    {alt,'soap12:operation','soap12:tOperation',[],1,1,true,
                         undefined},
                    {alt,'soap12:headerfault','soap12:tHeaderFault',[],1,1,
                         true,undefined},
                    {alt,'soap12:header','soap12:tHeader',[],1,1,true,
                         undefined},
                    {alt,'soap12:fault','soap12:tFault',[],1,1,true,undefined},
                    {alt,'soap12:body','soap12:tBody',[],1,1,true,undefined},
                    {alt,'soap12:binding','soap12:tBinding',[],1,1,true,
                         undefined},
                    {alt,'soap12:address','soap12:tAddress',[],1,1,true,
                         undefined}],
                   0,unbound,undefined,4}],
              [],
              {anyAttr,undefined,"##other",undefined},
              undefined,3,1,1,false,undefined},
        {type,redefineType,sequence,
              [{el,[{alt,'xsd:annotation',annotationType,[],1,1,true,
                         undefined},
                    {alt,'xsd:attributeGroup',attributeGroupDefType,[],1,1,
                         true,undefined},
                    {alt,'xsd:group',groupDefType,[],1,1,true,undefined},
                    {alt,'xsd:simpleType',globalSimpleTypeType,[],1,1,true,
                         undefined},
                    {alt,'xsd:complexType',globalComplexTypeType,[],1,1,true,
                         undefined}],
                   0,unbound,undefined,5}],
              [{att,id,3,true,char},{att,schemaLocation,4,false,char}],
              undefined,undefined,4,1,1,false,undefined},
        {type,restrictionType,sequence,
              [{el,[{alt,'xsd:annotation',annotationType,[],1,1,true,
                         undefined}],
                   0,1,undefined,3},
               {el,[{alt,'#any',any,
                         ['xsd:attribute','xsd:attributeGroup',
                          'xsd:anyAttribute'],
                         1,1,true,
                         {anyInfo,undefined,"##other",undefined}},
                    {alt,'xsd:simpleType',globalSimpleTypeType,[],1,1,true,
                         undefined},
                    {alt,'xsd:schema',schemaType,[],1,1,true,undefined},
                    {alt,'xsd:element',globalElementType,[],1,1,true,
                         undefined},
                    {alt,'xsd:complexType',globalComplexTypeType,[],1,1,true,
                         undefined},
                    {alt,'xsd:attributeGroup',attributeGroupDefType,[],1,1,
                         true,undefined},
                    {alt,'xsd:attribute',globalAttributeType,[],1,1,true,
                         undefined},
                    {alt,'xsd:annotation',annotationType,[],1,1,true,
                         undefined},
                    {alt,'wsdl:definitions','wsdl:definitions',[],1,1,true,
                         undefined},
                    {alt,'soap:operation','soap:operation',[],1,1,true,
                         undefined},
                    {alt,'soap:headerfault','soap:headerFault',[],1,1,true,
                         undefined},
                    {alt,'soap:header','soap:header',[],1,1,true,undefined},
                    {alt,'soap:fault','soap:fault',[],1,1,true,undefined},
                    {alt,'soap:body','soap:body',[],1,1,true,undefined},
                    {alt,'soap:binding','soap:binding',[],1,1,true,undefined},
                    {alt,'soap:address','soap:address',[],1,1,true,undefined},
                    {alt,'soap12:operation','soap12:tOperation',[],1,1,true,
                         undefined},
                    {alt,'soap12:headerfault','soap12:tHeaderFault',[],1,1,
                         true,undefined},
                    {alt,'soap12:header','soap12:tHeader',[],1,1,true,
                         undefined},
                    {alt,'soap12:fault','soap12:tFault',[],1,1,true,undefined},
                    {alt,'soap12:body','soap12:tBody',[],1,1,true,undefined},
                    {alt,'soap12:binding','soap12:tBinding',[],1,1,true,
                         undefined},
                    {alt,'soap12:address','soap12:tAddress',[],1,1,true,
                         undefined}],
                   0,unbound,undefined,4},
               {el,[{alt,'xsd:attributeGroup',attributeGroupRefType,[],1,1,
                         true,undefined},
                    {alt,'xsd:attribute',localAttributeType,[],1,1,true,
                         undefined}],
                   0,unbound,undefined,5},
               {el,[{alt,'xsd:anyAttribute',anyAttributeType,[],1,1,true,
                         undefined}],
                   0,1,undefined,6}],
              [{att,base,7,false,qname}],
              {anyAttr,undefined,"##other",undefined},
              undefined,6,1,1,false,undefined},
        {type,restrictionTypeC,sequence,
              [{el,[{alt,'xsd:annotation',annotationType,[],1,1,true,
                         undefined}],
                   0,1,undefined,4},
               {el,[{alt,'xsd:all',allType,[],1,1,true,undefined},
                    {alt,'xsd:group',groupRefType,[],1,1,true,undefined},
                    {alt,'xsd:choice',choiceType,[],1,1,true,undefined},
                    {alt,'xsd:sequence',sequenceType,[],1,1,true,undefined}],
                   0,1,undefined,5},
               {el,[{alt,'xsd:attributeGroup',attributeGroupRefType,[],1,1,
                         true,undefined},
                    {alt,'xsd:attribute',localAttributeType,[],1,1,true,
                         undefined}],
                   0,unbound,undefined,6},
               {el,[{alt,'xsd:anyAttribute',anyAttributeType,[],1,1,true,
                         undefined}],
                   0,unbound,undefined,7}],
              [{att,base,3,false,qname}],
              {anyAttr,undefined,"##other",undefined},
              undefined,6,1,1,false,undefined},
        {type,schemaType,sequence,
              [{el,[{alt,'xsd:annotation',annotationType,[],1,1,true,
                         undefined},
                    {alt,'xsd:redefine',redefineType,[],1,1,true,undefined},
                    {alt,'xsd:include',includeType,[],1,1,true,undefined},
                    {alt,'xsd:import',importType,[],1,1,true,undefined}],
                   0,unbound,undefined,10},
               {el,[{alt,'xsd:annotation',annotationType,[],1,1,true,
                         undefined},
                    {alt,'xsd:attributeGroup',attributeGroupDefType,[],1,1,
                         true,undefined},
                    {alt,'xsd:group',groupDefType,[],1,1,true,undefined},
                    {alt,'xsd:attribute',globalAttributeType,[],1,1,true,
                         undefined},
                    {alt,'xsd:simpleType',globalSimpleTypeType,[],1,1,true,
                         undefined},
                    {alt,'xsd:complexType',globalComplexTypeType,[],1,1,true,
                         undefined},
                    {alt,'xsd:element',globalElementType,[],1,1,true,
                         undefined}],
                   0,unbound,undefined,11}],
              [{att,targetNamespace,3,true,char},
               {att,elementFormDefault,4,true,char},
               {att,attributeFormDefault,5,true,char},
               {att,blockDefault,6,true,char},
               {att,finalDefault,7,true,char},
               {att,version,8,true,char},
               {att,id,9,true,char}],
              {anyAttr,undefined,"##other",undefined},
              undefined,10,1,1,false,undefined},
        {type,sequenceType,sequence,
              [{el,[{alt,'xsd:annotation',annotationType,[],1,1,true,
                         undefined}],
                   0,1,undefined,3},
               {el,[{alt,'xsd:sequence',sequenceType,[],1,1,true,undefined},
                    {alt,'xsd:choice',choiceType,[],1,1,true,undefined},
                    {alt,'xsd:any',anyType,[],1,1,true,undefined},
                    {alt,'xsd:group',groupRefType,[],1,1,true,undefined},
                    {alt,'xsd:element',localElementType,[],1,1,true,
                         undefined}],
                   0,unbound,undefined,4}],
              [{att,minOccurs,5,true,char},{att,maxOccurs,6,true,char}],
              {anyAttr,undefined,"##other",undefined},
              undefined,5,1,1,false,undefined},
        {type,simpleContentType,sequence,
              [{el,[{alt,'xsd:annotation',annotationType,[],1,1,true,
                         undefined}],
                   0,1,undefined,3},
               {el,[{alt,'xsd:restriction',restrictionType,[],1,1,true,
                         undefined},
                    {alt,'xsd:extension',extensionType,[],1,1,true,undefined}],
                   1,1,undefined,4}],
              [{att,id,5,true,char}],
              {anyAttr,undefined,"##other",undefined},
              undefined,4,1,1,false,undefined},
        {type,'soap12:tAddress',sequence,[],
              [{att,'wsdl:required',3,true,bool},{att,location,4,false,char}],
              {anyAttr,"lax","##other",
                       "http://schemas.xmlsoap.org/wsdl/soap12/"},
              undefined,3,1,1,undefined,'soap12:tAddress'},
        {type,'soap12:tBinding',sequence,[],
              [{att,'wsdl:required',3,true,bool},
               {att,transport,4,false,char},
               {att,style,5,true,char}],
              {anyAttr,"lax","##other",
                       "http://schemas.xmlsoap.org/wsdl/soap12/"},
              undefined,4,1,1,undefined,'soap12:tBinding'},
        {type,'soap12:tBody',sequence,[],
              [{att,'wsdl:required',3,true,bool},
               {att,parts,4,true,char},
               {att,encodingStyle,5,true,char},
               {att,use,6,true,char},
               {att,namespace,7,true,char}],
              {anyAttr,"lax","##other",
                       "http://schemas.xmlsoap.org/wsdl/soap12/"},
              undefined,6,1,1,undefined,'soap12:tBody'},
        {type,'soap12:tExtensibilityElementOpenAttrs',sequence,[],
              [{att,'wsdl:required',3,true,bool}],
              {anyAttr,"lax","##other",
                       "http://schemas.xmlsoap.org/wsdl/soap12/"},
              undefined,2,1,1,undefined,
              'soap12:tExtensibilityElementOpenAttrs'},
        {type,'soap12:tFault',sequence,[],
              [{att,'wsdl:required',3,true,bool},
               {att,parts,4,true,char},
               {att,encodingStyle,5,true,char},
               {att,use,6,true,char},
               {att,namespace,7,true,char},
               {att,name,8,false,char}],
              {anyAttr,"lax","##other",
                       "http://schemas.xmlsoap.org/wsdl/soap12/"},
              undefined,7,1,1,undefined,'soap12:tFault'},
        {type,'soap12:tFaultRes',sequence,[],
              [{att,'wsdl:required',3,true,bool},
               {att,parts,4,true,char},
               {att,encodingStyle,5,true,char},
               {att,use,6,true,char},
               {att,namespace,7,true,char}],
              {anyAttr,"lax","##other",
                       "http://schemas.xmlsoap.org/wsdl/soap12/"},
              undefined,6,1,1,undefined,'soap12:tFaultRes'},
        {type,'soap12:tHeader',sequence,
              [{el,[{alt,'soap12:headerfault','soap12:tHeaderFault',[],1,1,
                         true,undefined}],
                   0,unbound,undefined,9}],
              [{att,'wsdl:required',3,true,bool},
               {att,message,4,false,qname},
               {att,part,5,false,char},
               {att,use,6,false,char},
               {att,encodingStyle,7,true,char},
               {att,namespace,8,true,char}],
              {anyAttr,"lax","##other",
                       "http://schemas.xmlsoap.org/wsdl/soap12/"},
              undefined,8,1,1,undefined,'soap12:tHeader'},
        {type,'soap12:tHeaderFault',sequence,[],
              [{att,message,3,false,qname},
               {att,part,4,false,char},
               {att,use,5,false,char},
               {att,encodingStyle,6,true,char},
               {att,namespace,7,true,char}],
              {anyAttr,"lax","##other",
                       "http://schemas.xmlsoap.org/wsdl/soap12/"},
              undefined,6,1,1,undefined,undefined},
        {type,'soap12:tOperation',sequence,[],
              [{att,'wsdl:required',3,true,bool},
               {att,soapAction,4,true,char},
               {att,soapActionRequired,5,true,bool},
               {att,style,6,true,char}],
              {anyAttr,"lax","##other",
                       "http://schemas.xmlsoap.org/wsdl/soap12/"},
              undefined,5,1,1,undefined,'soap12:tOperation'},
        {type,'soap:address',sequence,[],
              [{att,'wsdl:required',3,true,bool},{att,location,4,false,char}],
              undefined,undefined,3,1,1,undefined,'soap:address'},
        {type,'soap:binding',sequence,[],
              [{att,'wsdl:required',3,true,bool},
               {att,transport,4,false,char},
               {att,style,5,true,char}],
              undefined,undefined,4,1,1,undefined,'soap:binding'},
        {type,'soap:body',sequence,[],
              [{att,'wsdl:required',3,true,bool},
               {att,parts,4,true,char},
               {att,encodingStyle,5,true,char},
               {att,use,6,true,char},
               {att,namespace,7,true,char}],
              undefined,undefined,6,1,1,undefined,'soap:body'},
        {type,'soap:fault',sequence,[],
              [{att,'wsdl:required',3,true,bool},
               {att,parts,4,true,char},
               {att,encodingStyle,5,true,char},
               {att,use,6,true,char},
               {att,namespace,7,true,char},
               {att,name,8,false,char}],
              undefined,undefined,7,1,1,undefined,'soap:fault'},
        {type,'soap:faultRes',sequence,[],
              [{att,'wsdl:required',3,true,bool},
               {att,parts,4,true,char},
               {att,encodingStyle,5,true,char},
               {att,use,6,true,char},
               {att,namespace,7,true,char}],
              undefined,undefined,6,1,1,undefined,'soap:faultRes'},
        {type,'soap:header',sequence,
              [{el,[{alt,'soap:headerfault','soap:headerFault',[],1,1,true,
                         undefined}],
                   0,unbound,undefined,9}],
              [{att,'wsdl:required',3,true,bool},
               {att,message,4,false,qname},
               {att,part,5,false,char},
               {att,use,6,false,char},
               {att,encodingStyle,7,true,char},
               {att,namespace,8,true,char}],
              undefined,undefined,8,1,1,undefined,'soap:header'},
        {type,'soap:headerFault',sequence,[],
              [{att,message,3,false,qname},
               {att,part,4,false,char},
               {att,use,5,false,char},
               {att,encodingStyle,6,true,char},
               {att,namespace,7,true,char}],
              undefined,undefined,6,1,1,undefined,undefined},
        {type,'soap:operation',sequence,[],
              [{att,'wsdl:required',3,true,bool},
               {att,soapAction,4,true,char},
               {att,style,5,true,char}],
              undefined,undefined,4,1,1,undefined,'soap:operation'},
        {type,'wsdl:binding',sequence,
              [{el,[{alt,'wsdl:documentation','wsdl:documentation',[],1,1,
                         true,undefined}],
                   0,1,undefined,5},
               {el,[{alt,'soap:address','soap:address',[],1,1,true,undefined},
                    {alt,'soap:headerfault','soap:headerFault',[],1,1,true,
                         undefined},
                    {alt,'soap:header','soap:header',[],1,1,true,undefined},
                    {alt,'soap:fault','soap:fault',[],1,1,true,undefined},
                    {alt,'soap:body','soap:body',[],1,1,true,undefined},
                    {alt,'soap:operation','soap:operation',[],1,1,true,
                         undefined},
                    {alt,'soap:binding','soap:binding',[],1,1,true,undefined},
                    {alt,'soap12:binding','soap12:tBinding',[],1,1,true,
                         undefined},
                    {alt,'soap12:operation','soap12:tOperation',[],1,1,true,
                         undefined},
                    {alt,'soap12:body','soap12:tBody',[],1,1,true,undefined},
                    {alt,'soap12:fault','soap12:tFault',[],1,1,true,undefined},
                    {alt,'soap12:header','soap12:tHeader',[],1,1,true,
                         undefined},
                    {alt,'soap12:headerfault','soap12:tHeaderFault',[],1,1,
                         true,undefined},
                    {alt,'soap12:address','soap12:tAddress',[],1,1,true,
                         undefined},
                    {alt,'#any',any,
                         ['wsdl:operation'],
                         1,1,true,
                         {anyInfo,"lax","##other",
                                  "http://schemas.xmlsoap.org/wsdl/"}},
                    {alt,'xsd:simpleType',globalSimpleTypeType,[],1,1,true,
                         undefined},
                    {alt,'xsd:schema',schemaType,[],1,1,true,undefined},
                    {alt,'xsd:element',globalElementType,[],1,1,true,
                         undefined},
                    {alt,'xsd:complexType',globalComplexTypeType,[],1,1,true,
                         undefined},
                    {alt,'xsd:attributeGroup',attributeGroupDefType,[],1,1,
                         true,undefined},
                    {alt,'xsd:attribute',globalAttributeType,[],1,1,true,
                         undefined},
                    {alt,'xsd:annotation',annotationType,[],1,1,true,
                         undefined},
                    {alt,'soap:operation','soap:operation',[],1,1,true,
                         undefined},
                    {alt,'soap:headerfault','soap:headerFault',[],1,1,true,
                         undefined},
                    {alt,'soap:header','soap:header',[],1,1,true,undefined},
                    {alt,'soap:fault','soap:fault',[],1,1,true,undefined},
                    {alt,'soap:body','soap:body',[],1,1,true,undefined},
                    {alt,'soap:binding','soap:binding',[],1,1,true,undefined},
                    {alt,'soap:address','soap:address',[],1,1,true,undefined},
                    {alt,'soap12:operation','soap12:tOperation',[],1,1,true,
                         undefined},
                    {alt,'soap12:headerfault','soap12:tHeaderFault',[],1,1,
                         true,undefined},
                    {alt,'soap12:header','soap12:tHeader',[],1,1,true,
                         undefined},
                    {alt,'soap12:fault','soap12:tFault',[],1,1,true,undefined},
                    {alt,'soap12:body','soap12:tBody',[],1,1,true,undefined},
                    {alt,'soap12:binding','soap12:tBinding',[],1,1,true,
                         undefined},
                    {alt,'soap12:address','soap12:tAddress',[],1,1,true,
                         undefined}],
                   0,unbound,undefined,6},
               {el,[{alt,'wsdl:operation','wsdl:bindingOperation',[],1,1,true,
                         undefined}],
                   0,unbound,undefined,7}],
              [{att,name,3,false,char},{att,type,4,false,qname}],
              undefined,undefined,6,1,1,undefined,undefined},
        {type,'wsdl:bindingOperation',sequence,
              [{el,[{alt,'wsdl:documentation','wsdl:documentation',[],1,1,
                         true,undefined}],
                   0,1,undefined,4},
               {el,[{alt,'soap:address','soap:address',[],1,1,true,undefined},
                    {alt,'soap:headerfault','soap:headerFault',[],1,1,true,
                         undefined},
                    {alt,'soap:header','soap:header',[],1,1,true,undefined},
                    {alt,'soap:fault','soap:fault',[],1,1,true,undefined},
                    {alt,'soap:body','soap:body',[],1,1,true,undefined},
                    {alt,'soap:operation','soap:operation',[],1,1,true,
                         undefined},
                    {alt,'soap:binding','soap:binding',[],1,1,true,undefined},
                    {alt,'soap12:binding','soap12:tBinding',[],1,1,true,
                         undefined},
                    {alt,'soap12:operation','soap12:tOperation',[],1,1,true,
                         undefined},
                    {alt,'soap12:body','soap12:tBody',[],1,1,true,undefined},
                    {alt,'soap12:fault','soap12:tFault',[],1,1,true,undefined},
                    {alt,'soap12:header','soap12:tHeader',[],1,1,true,
                         undefined},
                    {alt,'soap12:headerfault','soap12:tHeaderFault',[],1,1,
                         true,undefined},
                    {alt,'soap12:address','soap12:tAddress',[],1,1,true,
                         undefined},
                    {alt,'#any',any,
                         ['wsdl:fault','wsdl:output','wsdl:input'],
                         1,1,true,
                         {anyInfo,"lax","##other",
                                  "http://schemas.xmlsoap.org/wsdl/"}},
                    {alt,'xsd:simpleType',globalSimpleTypeType,[],1,1,true,
                         undefined},
                    {alt,'xsd:schema',schemaType,[],1,1,true,undefined},
                    {alt,'xsd:element',globalElementType,[],1,1,true,
                         undefined},
                    {alt,'xsd:complexType',globalComplexTypeType,[],1,1,true,
                         undefined},
                    {alt,'xsd:attributeGroup',attributeGroupDefType,[],1,1,
                         true,undefined},
                    {alt,'xsd:attribute',globalAttributeType,[],1,1,true,
                         undefined},
                    {alt,'xsd:annotation',annotationType,[],1,1,true,
                         undefined},
                    {alt,'soap:operation','soap:operation',[],1,1,true,
                         undefined},
                    {alt,'soap:headerfault','soap:headerFault',[],1,1,true,
                         undefined},
                    {alt,'soap:header','soap:header',[],1,1,true,undefined},
                    {alt,'soap:fault','soap:fault',[],1,1,true,undefined},
                    {alt,'soap:body','soap:body',[],1,1,true,undefined},
                    {alt,'soap:binding','soap:binding',[],1,1,true,undefined},
                    {alt,'soap:address','soap:address',[],1,1,true,undefined},
                    {alt,'soap12:operation','soap12:tOperation',[],1,1,true,
                         undefined},
                    {alt,'soap12:headerfault','soap12:tHeaderFault',[],1,1,
                         true,undefined},
                    {alt,'soap12:header','soap12:tHeader',[],1,1,true,
                         undefined},
                    {alt,'soap12:fault','soap12:tFault',[],1,1,true,undefined},
                    {alt,'soap12:body','soap12:tBody',[],1,1,true,undefined},
                    {alt,'soap12:binding','soap12:tBinding',[],1,1,true,
                         undefined},
                    {alt,'soap12:address','soap12:tAddress',[],1,1,true,
                         undefined}],
                   0,unbound,undefined,5},
               {el,[{alt,'wsdl:input','wsdl:bindingOperationMessage',[],1,1,
                         true,undefined}],
                   0,1,undefined,6},
               {el,[{alt,'wsdl:output','wsdl:bindingOperationMessage',[],1,1,
                         true,undefined}],
                   0,1,undefined,7},
               {el,[{alt,'wsdl:fault','wsdl:bindingOperationFault',[],1,1,
                         true,undefined}],
                   0,unbound,undefined,8}],
              [{att,name,3,false,char}],
              undefined,undefined,7,1,1,undefined,undefined},
        {type,'wsdl:bindingOperationFault',sequence,
              [{el,[{alt,'wsdl:documentation','wsdl:documentation',[],1,1,
                         true,undefined}],
                   0,1,undefined,4},
               {el,[{alt,'soap:address','soap:address',[],1,1,true,undefined},
                    {alt,'soap:headerfault','soap:headerFault',[],1,1,true,
                         undefined},
                    {alt,'soap:header','soap:header',[],1,1,true,undefined},
                    {alt,'soap:fault','soap:fault',[],1,1,true,undefined},
                    {alt,'soap:body','soap:body',[],1,1,true,undefined},
                    {alt,'soap:operation','soap:operation',[],1,1,true,
                         undefined},
                    {alt,'soap:binding','soap:binding',[],1,1,true,undefined},
                    {alt,'soap12:binding','soap12:tBinding',[],1,1,true,
                         undefined},
                    {alt,'soap12:operation','soap12:tOperation',[],1,1,true,
                         undefined},
                    {alt,'soap12:body','soap12:tBody',[],1,1,true,undefined},
                    {alt,'soap12:fault','soap12:tFault',[],1,1,true,undefined},
                    {alt,'soap12:header','soap12:tHeader',[],1,1,true,
                         undefined},
                    {alt,'soap12:headerfault','soap12:tHeaderFault',[],1,1,
                         true,undefined},
                    {alt,'soap12:address','soap12:tAddress',[],1,1,true,
                         undefined},
                    {alt,'#any',any,[],1,1,true,
                         {anyInfo,"strict","##other",
                                  "http://schemas.xmlsoap.org/wsdl/"}},
                    {alt,'xsd:simpleType',globalSimpleTypeType,[],1,1,true,
                         undefined},
                    {alt,'xsd:schema',schemaType,[],1,1,true,undefined},
                    {alt,'xsd:element',globalElementType,[],1,1,true,
                         undefined},
                    {alt,'xsd:complexType',globalComplexTypeType,[],1,1,true,
                         undefined},
                    {alt,'xsd:attributeGroup',attributeGroupDefType,[],1,1,
                         true,undefined},
                    {alt,'xsd:attribute',globalAttributeType,[],1,1,true,
                         undefined},
                    {alt,'xsd:annotation',annotationType,[],1,1,true,
                         undefined},
                    {alt,'soap:operation','soap:operation',[],1,1,true,
                         undefined},
                    {alt,'soap:headerfault','soap:headerFault',[],1,1,true,
                         undefined},
                    {alt,'soap:header','soap:header',[],1,1,true,undefined},
                    {alt,'soap:fault','soap:fault',[],1,1,true,undefined},
                    {alt,'soap:body','soap:body',[],1,1,true,undefined},
                    {alt,'soap:binding','soap:binding',[],1,1,true,undefined},
                    {alt,'soap:address','soap:address',[],1,1,true,undefined},
                    {alt,'soap12:operation','soap12:tOperation',[],1,1,true,
                         undefined},
                    {alt,'soap12:headerfault','soap12:tHeaderFault',[],1,1,
                         true,undefined},
                    {alt,'soap12:header','soap12:tHeader',[],1,1,true,
                         undefined},
                    {alt,'soap12:fault','soap12:tFault',[],1,1,true,undefined},
                    {alt,'soap12:body','soap12:tBody',[],1,1,true,undefined},
                    {alt,'soap12:binding','soap12:tBinding',[],1,1,true,
                         undefined},
                    {alt,'soap12:address','soap12:tAddress',[],1,1,true,
                         undefined}],
                   0,unbound,undefined,5}],
              [{att,name,3,false,char}],
              undefined,undefined,4,1,1,undefined,undefined},
        {type,'wsdl:bindingOperationMessage',sequence,
              [{el,[{alt,'wsdl:documentation','wsdl:documentation',[],1,1,
                         true,undefined}],
                   0,1,undefined,4},
               {el,[{alt,'soap:address','soap:address',[],1,1,true,undefined},
                    {alt,'soap:headerfault','soap:headerFault',[],1,1,true,
                         undefined},
                    {alt,'soap:header','soap:header',[],1,1,true,undefined},
                    {alt,'soap:fault','soap:fault',[],1,1,true,undefined},
                    {alt,'soap:body','soap:body',[],1,1,true,undefined},
                    {alt,'soap:operation','soap:operation',[],1,1,true,
                         undefined},
                    {alt,'soap:binding','soap:binding',[],1,1,true,undefined},
                    {alt,'soap12:binding','soap12:tBinding',[],1,1,true,
                         undefined},
                    {alt,'soap12:operation','soap12:tOperation',[],1,1,true,
                         undefined},
                    {alt,'soap12:body','soap12:tBody',[],1,1,true,undefined},
                    {alt,'soap12:fault','soap12:tFault',[],1,1,true,undefined},
                    {alt,'soap12:header','soap12:tHeader',[],1,1,true,
                         undefined},
                    {alt,'soap12:headerfault','soap12:tHeaderFault',[],1,1,
                         true,undefined},
                    {alt,'soap12:address','soap12:tAddress',[],1,1,true,
                         undefined},
                    {alt,'#any',any,[],1,1,true,
                         {anyInfo,"lax","##other",
                                  "http://schemas.xmlsoap.org/wsdl/"}},
                    {alt,'xsd:simpleType',globalSimpleTypeType,[],1,1,true,
                         undefined},
                    {alt,'xsd:schema',schemaType,[],1,1,true,undefined},
                    {alt,'xsd:element',globalElementType,[],1,1,true,
                         undefined},
                    {alt,'xsd:complexType',globalComplexTypeType,[],1,1,true,
                         undefined},
                    {alt,'xsd:attributeGroup',attributeGroupDefType,[],1,1,
                         true,undefined},
                    {alt,'xsd:attribute',globalAttributeType,[],1,1,true,
                         undefined},
                    {alt,'xsd:annotation',annotationType,[],1,1,true,
                         undefined},
                    {alt,'soap:operation','soap:operation',[],1,1,true,
                         undefined},
                    {alt,'soap:headerfault','soap:headerFault',[],1,1,true,
                         undefined},
                    {alt,'soap:header','soap:header',[],1,1,true,undefined},
                    {alt,'soap:fault','soap:fault',[],1,1,true,undefined},
                    {alt,'soap:body','soap:body',[],1,1,true,undefined},
                    {alt,'soap:binding','soap:binding',[],1,1,true,undefined},
                    {alt,'soap:address','soap:address',[],1,1,true,undefined},
                    {alt,'soap12:operation','soap12:tOperation',[],1,1,true,
                         undefined},
                    {alt,'soap12:headerfault','soap12:tHeaderFault',[],1,1,
                         true,undefined},
                    {alt,'soap12:header','soap12:tHeader',[],1,1,true,
                         undefined},
                    {alt,'soap12:fault','soap12:tFault',[],1,1,true,undefined},
                    {alt,'soap12:body','soap12:tBody',[],1,1,true,undefined},
                    {alt,'soap12:binding','soap12:tBinding',[],1,1,true,
                         undefined},
                    {alt,'soap12:address','soap12:tAddress',[],1,1,true,
                         undefined}],
                   0,unbound,undefined,5}],
              [{att,name,3,true,char}],
              undefined,undefined,4,1,1,undefined,undefined},
        {type,'wsdl:definitions',sequence,
              [{el,[{alt,'wsdl:import','wsdl:import',[],1,1,true,undefined}],
                   0,unbound,undefined,5},
               {el,[{alt,'wsdl:documentation','wsdl:documentation',[],1,1,
                         true,undefined}],
                   0,1,undefined,6},
               {el,[{alt,'wsdl:types','wsdl:types',[],1,1,true,undefined}],
                   0,1,undefined,7},
               {el,[{alt,'wsdl:message','wsdl:message',[],1,1,true,undefined}],
                   0,unbound,undefined,8},
               {el,[{alt,'wsdl:portType','wsdl:portType',[],1,1,true,
                         undefined}],
                   0,unbound,undefined,9},
               {el,[{alt,'wsdl:binding','wsdl:binding',[],1,1,true,undefined}],
                   0,unbound,undefined,10},
               {el,[{alt,'wsdl:service','wsdl:service',[],1,1,true,undefined}],
                   0,unbound,undefined,11}],
              [{att,targetNamespace,3,true,char},{att,name,4,true,char}],
              undefined,undefined,10,1,1,undefined,undefined},
        {type,'wsdl:documentation',sequence,
              [{el,[{alt,'#any',any,[],1,1,true,
                         {anyInfo,"lax","##any",
                                  "http://schemas.xmlsoap.org/wsdl/"}}],
                   0,unbound,undefined,3}],
              [],undefined,undefined,2,1,1,true,undefined},
        {type,'wsdl:fault',sequence,
              [{el,[{alt,'wsdl:documentation','wsdl:documentation',[],1,1,
                         true,undefined}],
                   0,1,undefined,5}],
              [{att,name,3,false,char},{att,message,4,false,qname}],
              {anyAttr,"lax","##other","http://schemas.xmlsoap.org/wsdl/"},
              undefined,4,1,1,undefined,undefined},
        {type,'wsdl:import',sequence,
              [{el,[{alt,'wsdl:documentation','wsdl:documentation',[],1,1,
                         true,undefined}],
                   0,1,undefined,5}],
              [{att,namespace,3,false,char},{att,location,4,false,char}],
              {anyAttr,"lax","##other","http://schemas.xmlsoap.org/wsdl/"},
              undefined,4,1,1,undefined,undefined},
        {type,'wsdl:message',sequence,
              [{el,[{alt,'wsdl:documentation','wsdl:documentation',[],1,1,
                         true,undefined}],
                   0,1,undefined,4},
               {el,[{alt,'wsdl:part','wsdl:part',[],1,1,true,undefined}],
                   0,unbound,undefined,5}],
              [{att,name,3,false,char}],
              undefined,undefined,4,1,1,undefined,undefined},
        {type,'wsdl:operation',sequence,
              [{el,[{alt,'wsdl:documentation','wsdl:documentation',[],1,1,
                         true,undefined}],
                   0,1,undefined,5},
               {el,[{alt,'soap:address','soap:address',[],1,1,true,undefined},
                    {alt,'soap:headerfault','soap:headerFault',[],1,1,true,
                         undefined},
                    {alt,'soap:header','soap:header',[],1,1,true,undefined},
                    {alt,'soap:fault','soap:fault',[],1,1,true,undefined},
                    {alt,'soap:body','soap:body',[],1,1,true,undefined},
                    {alt,'soap:operation','soap:operation',[],1,1,true,
                         undefined},
                    {alt,'soap:binding','soap:binding',[],1,1,true,undefined},
                    {alt,'soap12:binding','soap12:tBinding',[],1,1,true,
                         undefined},
                    {alt,'soap12:operation','soap12:tOperation',[],1,1,true,
                         undefined},
                    {alt,'soap12:body','soap12:tBody',[],1,1,true,undefined},
                    {alt,'soap12:fault','soap12:tFault',[],1,1,true,undefined},
                    {alt,'soap12:header','soap12:tHeader',[],1,1,true,
                         undefined},
                    {alt,'soap12:headerfault','soap12:tHeaderFault',[],1,1,
                         true,undefined},
                    {alt,'soap12:address','soap12:tAddress',[],1,1,true,
                         undefined},
                    {alt,'#any',any,
                         ['wsdl:input','wsdl:output'],
                         1,1,true,
                         {anyInfo,"lax","##other",
                                  "http://schemas.xmlsoap.org/wsdl/"}},
                    {alt,'xsd:simpleType',globalSimpleTypeType,[],1,1,true,
                         undefined},
                    {alt,'xsd:schema',schemaType,[],1,1,true,undefined},
                    {alt,'xsd:element',globalElementType,[],1,1,true,
                         undefined},
                    {alt,'xsd:complexType',globalComplexTypeType,[],1,1,true,
                         undefined},
                    {alt,'xsd:attributeGroup',attributeGroupDefType,[],1,1,
                         true,undefined},
                    {alt,'xsd:attribute',globalAttributeType,[],1,1,true,
                         undefined},
                    {alt,'xsd:annotation',annotationType,[],1,1,true,
                         undefined},
                    {alt,'soap:operation','soap:operation',[],1,1,true,
                         undefined},
                    {alt,'soap:headerfault','soap:headerFault',[],1,1,true,
                         undefined},
                    {alt,'soap:header','soap:header',[],1,1,true,undefined},
                    {alt,'soap:fault','soap:fault',[],1,1,true,undefined},
                    {alt,'soap:body','soap:body',[],1,1,true,undefined},
                    {alt,'soap:binding','soap:binding',[],1,1,true,undefined},
                    {alt,'soap:address','soap:address',[],1,1,true,undefined},
                    {alt,'soap12:operation','soap12:tOperation',[],1,1,true,
                         undefined},
                    {alt,'soap12:headerfault','soap12:tHeaderFault',[],1,1,
                         true,undefined},
                    {alt,'soap12:header','soap12:tHeader',[],1,1,true,
                         undefined},
                    {alt,'soap12:fault','soap12:tFault',[],1,1,true,undefined},
                    {alt,'soap12:body','soap12:tBody',[],1,1,true,undefined},
                    {alt,'soap12:binding','soap12:tBinding',[],1,1,true,
                         undefined},
                    {alt,'soap12:address','soap12:tAddress',[],1,1,true,
                         undefined}],
                   0,unbound,undefined,6},
               {el,[{alt,'wsdl:input',
                         'wsdl:request-response-or-one-way-operation',[],1,1,
                         false,undefined},
                    {alt,'wsdl:output',
                         'wsdl:solicit-response-or-notification-operation',[],
                         1,1,false,undefined}],
                   1,1,undefined,7}],
              [{att,name,3,false,char},{att,parameterOrder,4,true,char}],
              undefined,undefined,6,1,1,undefined,undefined},
        {type,'wsdl:param',sequence,
              [{el,[{alt,'wsdl:documentation','wsdl:documentation',[],1,1,
                         true,undefined}],
                   0,1,undefined,5}],
              [{att,name,3,true,char},{att,message,4,false,qname}],
              {anyAttr,"lax","##other","http://schemas.xmlsoap.org/wsdl/"},
              undefined,4,1,1,undefined,undefined},
        {type,'wsdl:part',sequence,
              [{el,[{alt,'wsdl:documentation','wsdl:documentation',[],1,1,
                         true,undefined}],
                   0,1,undefined,6}],
              [{att,name,3,false,char},
               {att,element,4,true,qname},
               {att,type,5,true,qname}],
              {anyAttr,"lax","##other","http://schemas.xmlsoap.org/wsdl/"},
              undefined,5,1,1,undefined,undefined},
        {type,'wsdl:portType',sequence,
              [{el,[{alt,'wsdl:documentation','wsdl:documentation',[],1,1,
                         true,undefined}],
                   0,1,undefined,4},
               {el,[{alt,'wsdl:operation','wsdl:operation',[],1,1,true,
                         undefined}],
                   0,unbound,undefined,5}],
              [{att,name,3,false,char}],
              {anyAttr,"lax","##other","http://schemas.xmlsoap.org/wsdl/"},
              undefined,4,1,1,undefined,undefined},
        {type,'wsdl:request-response-or-one-way-operation',sequence,
              [{el,[{alt,'wsdl:input','wsdl:param',[],1,1,true,undefined}],
                   1,1,undefined,3},
               {el,[{alt,'wsdl:output','wsdl:param',[],1,1,true,undefined}],
                   0,1,undefined,4},
               {el,[{alt,'wsdl:fault','wsdl:fault',[],1,1,true,undefined}],
                   0,unbound,undefined,5}],
              [],undefined,undefined,4,1,1,undefined,undefined},
        {type,'wsdl:service',sequence,
              [{el,[{alt,'wsdl:documentation','wsdl:documentation',[],1,1,
                         true,undefined}],
                   0,1,undefined,4},
               {el,[{alt,'soap:address','soap:address',[],1,1,true,undefined},
                    {alt,'soap:headerfault','soap:headerFault',[],1,1,true,
                         undefined},
                    {alt,'soap:header','soap:header',[],1,1,true,undefined},
                    {alt,'soap:fault','soap:fault',[],1,1,true,undefined},
                    {alt,'soap:body','soap:body',[],1,1,true,undefined},
                    {alt,'soap:operation','soap:operation',[],1,1,true,
                         undefined},
                    {alt,'soap:binding','soap:binding',[],1,1,true,undefined},
                    {alt,'soap12:binding','soap12:tBinding',[],1,1,true,
                         undefined},
                    {alt,'soap12:operation','soap12:tOperation',[],1,1,true,
                         undefined},
                    {alt,'soap12:body','soap12:tBody',[],1,1,true,undefined},
                    {alt,'soap12:fault','soap12:tFault',[],1,1,true,undefined},
                    {alt,'soap12:header','soap12:tHeader',[],1,1,true,
                         undefined},
                    {alt,'soap12:headerfault','soap12:tHeaderFault',[],1,1,
                         true,undefined},
                    {alt,'soap12:address','soap12:tAddress',[],1,1,true,
                         undefined},
                    {alt,'#any',any,[],1,1,true,
                         {anyInfo,"strict","##other",
                                  "http://schemas.xmlsoap.org/wsdl/"}},
                    {alt,'xsd:simpleType',globalSimpleTypeType,[],1,1,true,
                         undefined},
                    {alt,'xsd:schema',schemaType,[],1,1,true,undefined},
                    {alt,'xsd:element',globalElementType,[],1,1,true,
                         undefined},
                    {alt,'xsd:complexType',globalComplexTypeType,[],1,1,true,
                         undefined},
                    {alt,'xsd:attributeGroup',attributeGroupDefType,[],1,1,
                         true,undefined},
                    {alt,'xsd:attribute',globalAttributeType,[],1,1,true,
                         undefined},
                    {alt,'xsd:annotation',annotationType,[],1,1,true,
                         undefined},
                    {alt,'soap:operation','soap:operation',[],1,1,true,
                         undefined},
                    {alt,'soap:headerfault','soap:headerFault',[],1,1,true,
                         undefined},
                    {alt,'soap:header','soap:header',[],1,1,true,undefined},
                    {alt,'soap:fault','soap:fault',[],1,1,true,undefined},
                    {alt,'soap:body','soap:body',[],1,1,true,undefined},
                    {alt,'soap:binding','soap:binding',[],1,1,true,undefined},
                    {alt,'soap:address','soap:address',[],1,1,true,undefined},
                    {alt,'soap12:operation','soap12:tOperation',[],1,1,true,
                         undefined},
                    {alt,'soap12:headerfault','soap12:tHeaderFault',[],1,1,
                         true,undefined},
                    {alt,'soap12:header','soap12:tHeader',[],1,1,true,
                         undefined},
                    {alt,'soap12:fault','soap12:tFault',[],1,1,true,undefined},
                    {alt,'soap12:body','soap12:tBody',[],1,1,true,undefined},
                    {alt,'soap12:binding','soap12:tBinding',[],1,1,true,
                         undefined},
                    {alt,'soap12:address','soap12:tAddress',[],1,1,true,
                         undefined}],
                   0,unbound,undefined,5},
               {el,[{alt,'wsdl:port','wsdl:wsdl_port',[],1,1,true,undefined}],
                   0,unbound,undefined,6}],
              [{att,name,3,false,char}],
              undefined,undefined,5,1,1,undefined,undefined},
        {type,'wsdl:solicit-response-or-notification-operation',sequence,
              [{el,[{alt,'wsdl:output','wsdl:param',[],1,1,true,undefined}],
                   1,1,undefined,3},
               {el,[{alt,'wsdl:input','wsdl:param',[],1,1,true,undefined}],
                   0,1,undefined,4},
               {el,[{alt,'wsdl:fault','wsdl:fault',[],1,1,true,undefined}],
                   0,unbound,undefined,5}],
              [],undefined,undefined,4,1,1,undefined,undefined},
        {type,'wsdl:tExtensibilityElement',sequence,[],
              [{att,'wsdl:required',3,true,bool}],
              undefined,undefined,2,1,1,undefined,undefined},
        {type,'wsdl:types',sequence,
              [{el,[{alt,'wsdl:documentation','wsdl:documentation',[],1,1,
                         true,undefined}],
                   0,1,undefined,3},
               {el,[{alt,'soap:address','soap:address',[],1,1,true,undefined},
                    {alt,'soap:headerfault','soap:headerFault',[],1,1,true,
                         undefined},
                    {alt,'soap:header','soap:header',[],1,1,true,undefined},
                    {alt,'soap:fault','soap:fault',[],1,1,true,undefined},
                    {alt,'soap:body','soap:body',[],1,1,true,undefined},
                    {alt,'soap:operation','soap:operation',[],1,1,true,
                         undefined},
                    {alt,'soap:binding','soap:binding',[],1,1,true,undefined},
                    {alt,'soap12:binding','soap12:tBinding',[],1,1,true,
                         undefined},
                    {alt,'soap12:operation','soap12:tOperation',[],1,1,true,
                         undefined},
                    {alt,'soap12:body','soap12:tBody',[],1,1,true,undefined},
                    {alt,'soap12:fault','soap12:tFault',[],1,1,true,undefined},
                    {alt,'soap12:header','soap12:tHeader',[],1,1,true,
                         undefined},
                    {alt,'soap12:headerfault','soap12:tHeaderFault',[],1,1,
                         true,undefined},
                    {alt,'soap12:address','soap12:tAddress',[],1,1,true,
                         undefined},
                    {alt,'#any',any,[],1,1,true,
                         {anyInfo,"lax","##other",
                                  "http://schemas.xmlsoap.org/wsdl/"}},
                    {alt,'xsd:simpleType',globalSimpleTypeType,[],1,1,true,
                         undefined},
                    {alt,'xsd:schema',schemaType,[],1,1,true,undefined},
                    {alt,'xsd:element',globalElementType,[],1,1,true,
                         undefined},
                    {alt,'xsd:complexType',globalComplexTypeType,[],1,1,true,
                         undefined},
                    {alt,'xsd:attributeGroup',attributeGroupDefType,[],1,1,
                         true,undefined},
                    {alt,'xsd:attribute',globalAttributeType,[],1,1,true,
                         undefined},
                    {alt,'xsd:annotation',annotationType,[],1,1,true,
                         undefined},
                    {alt,'soap:operation','soap:operation',[],1,1,true,
                         undefined},
                    {alt,'soap:headerfault','soap:headerFault',[],1,1,true,
                         undefined},
                    {alt,'soap:header','soap:header',[],1,1,true,undefined},
                    {alt,'soap:fault','soap:fault',[],1,1,true,undefined},
                    {alt,'soap:body','soap:body',[],1,1,true,undefined},
                    {alt,'soap:binding','soap:binding',[],1,1,true,undefined},
                    {alt,'soap:address','soap:address',[],1,1,true,undefined},
                    {alt,'soap12:operation','soap12:tOperation',[],1,1,true,
                         undefined},
                    {alt,'soap12:headerfault','soap12:tHeaderFault',[],1,1,
                         true,undefined},
                    {alt,'soap12:header','soap12:tHeader',[],1,1,true,
                         undefined},
                    {alt,'soap12:fault','soap12:tFault',[],1,1,true,undefined},
                    {alt,'soap12:body','soap12:tBody',[],1,1,true,undefined},
                    {alt,'soap12:binding','soap12:tBinding',[],1,1,true,
                         undefined},
                    {alt,'soap12:address','soap12:tAddress',[],1,1,true,
                         undefined}],
                   0,unbound,undefined,4}],
              [],undefined,undefined,3,1,1,undefined,undefined},
        {type,'wsdl:wsdl_port',sequence,
              [{el,[{alt,'wsdl:documentation','wsdl:documentation',[],1,1,
                         true,undefined}],
                   0,1,undefined,5},
               {el,[{alt,'soap:address','soap:address',[],1,1,true,undefined},
                    {alt,'soap:headerfault','soap:headerFault',[],1,1,true,
                         undefined},
                    {alt,'soap:header','soap:header',[],1,1,true,undefined},
                    {alt,'soap:fault','soap:fault',[],1,1,true,undefined},
                    {alt,'soap:body','soap:body',[],1,1,true,undefined},
                    {alt,'soap:operation','soap:operation',[],1,1,true,
                         undefined},
                    {alt,'soap:binding','soap:binding',[],1,1,true,undefined},
                    {alt,'soap12:binding','soap12:tBinding',[],1,1,true,
                         undefined},
                    {alt,'soap12:operation','soap12:tOperation',[],1,1,true,
                         undefined},
                    {alt,'soap12:body','soap12:tBody',[],1,1,true,undefined},
                    {alt,'soap12:fault','soap12:tFault',[],1,1,true,undefined},
                    {alt,'soap12:header','soap12:tHeader',[],1,1,true,
                         undefined},
                    {alt,'soap12:headerfault','soap12:tHeaderFault',[],1,1,
                         true,undefined},
                    {alt,'soap12:address','soap12:tAddress',[],1,1,true,
                         undefined},
                    {alt,'#any',any,[],1,1,true,
                         {anyInfo,"lax","##other",
                                  "http://schemas.xmlsoap.org/wsdl/"}},
                    {alt,'xsd:simpleType',globalSimpleTypeType,[],1,1,true,
                         undefined},
                    {alt,'xsd:schema',schemaType,[],1,1,true,undefined},
                    {alt,'xsd:element',globalElementType,[],1,1,true,
                         undefined},
                    {alt,'xsd:complexType',globalComplexTypeType,[],1,1,true,
                         undefined},
                    {alt,'xsd:attributeGroup',attributeGroupDefType,[],1,1,
                         true,undefined},
                    {alt,'xsd:attribute',globalAttributeType,[],1,1,true,
                         undefined},
                    {alt,'xsd:annotation',annotationType,[],1,1,true,
                         undefined},
                    {alt,'soap:operation','soap:operation',[],1,1,true,
                         undefined},
                    {alt,'soap:headerfault','soap:headerFault',[],1,1,true,
                         undefined},
                    {alt,'soap:header','soap:header',[],1,1,true,undefined},
                    {alt,'soap:fault','soap:fault',[],1,1,true,undefined},
                    {alt,'soap:body','soap:body',[],1,1,true,undefined},
                    {alt,'soap:binding','soap:binding',[],1,1,true,undefined},
                    {alt,'soap:address','soap:address',[],1,1,true,undefined},
                    {alt,'soap12:operation','soap12:tOperation',[],1,1,true,
                         undefined},
                    {alt,'soap12:headerfault','soap12:tHeaderFault',[],1,1,
                         true,undefined},
                    {alt,'soap12:header','soap12:tHeader',[],1,1,true,
                         undefined},
                    {alt,'soap12:fault','soap12:tFault',[],1,1,true,undefined},
                    {alt,'soap12:body','soap12:tBody',[],1,1,true,undefined},
                    {alt,'soap12:binding','soap12:tBinding',[],1,1,true,
                         undefined},
                    {alt,'soap12:address','soap12:tAddress',[],1,1,true,
                         undefined}],
                   0,unbound,undefined,6}],
              [{att,name,3,false,char},{att,binding,4,false,qname}],
              undefined,undefined,5,1,1,undefined,undefined}],
       [{ns,"http://schemas.xmlsoap.org/wsdl/","wsdl", qualified},
        {ns,"http://schemas.xmlsoap.org/wsdl/soap/","soap", qualified},
        {ns,"http://schemas.xmlsoap.org/wsdl/soap12/","soap12", qualified},
        {ns,"http://www.w3.org/2001/XMLSchema","xsd", qualified}],
       "http://schemas.xmlsoap.org/wsdl/",
       [{'soap12:tAddress','soap12:tExtensibilityElementOpenAttrs'},
        {'soap12:tBinding','soap12:tExtensibilityElementOpenAttrs'},
        {'soap12:tBody','soap12:tExtensibilityElementOpenAttrs'},
        {'soap12:tExtensibilityElementOpenAttrs','wsdl:tExtensibilityElement'},
        {'soap12:tFault','soap12:tFaultRes'},
        {'soap12:tFaultRes','soap12:tBody'},
        {'soap12:tHeader','soap12:tExtensibilityElementOpenAttrs'},
        {'soap12:tOperation','soap12:tExtensibilityElementOpenAttrs'},
        {'soap:address','wsdl:tExtensibilityElement'},
        {'soap:binding','wsdl:tExtensibilityElement'},
        {'soap:body','wsdl:tExtensibilityElement'},
        {'soap:fault','soap:faultRes'},
        {'soap:faultRes','soap:body'},
        {'soap:header','wsdl:tExtensibilityElement'},
        {'soap:operation','wsdl:tExtensibilityElement'}],
       true,skip}.
